package keter.framework.util.legancy;

import java.util.Date;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;


/**
 *  适用于JDK7的日期工具类
 *
 * @author  gulixing@msn.com
 * @date    2015年8月27日
 */
public class DateUtil7 {
    /**
     * Logger for this class
     */
    private static final Logger logger = LoggerFactory.getLogger(DateUtil7.class);
	
	private DateUtil7() {}

	/**
	 * <p>Method ：untilNowSeconds
	 * <p>Description : 从选取时间点截止到当前时间经过的秒数
	 *
	 * @param time
	 * @return 
	 * @author  顾力行-gulixing@msn.com
	 */
	public static long untilNowSeconds(Date justnow) {
	    Date now = new Date();
	    return ((now.getTime() - justnow.getTime())/1000);
	}
	
	public static void main(String[] args) throws InterruptedException {
	    Date justnow = new Date();
	    Thread.sleep(1234);
        logger.error(DateUtil7.untilNowSeconds(justnow)+"");
        System.out.println(DateUtil7.untilNowSeconds(justnow)+"");
    }
	
//	/**
//	 * 获取当前日期的之前第n天的日期
//	 * @param number
//	 * @author src-dingchd
//	 * @return
//	 */
//	public static Date beforeToday(int days){	
//		return new DateTime().minusDays(days).toDate();
//	}
//	
//	/**
//	 * 返回今天日期是否为每个月的第一天
//	 * @param today 日期参数
//	 * @author src-dingchd
//	 * @return
//	 */
//	public static boolean isFirstDayOfMonth(Date today){			
//		Calendar calendar = Calendar.getInstance();
//		calendar.setTime(today);
//		int day = calendar.get(Calendar.DAY_OF_MONTH);
//		return (day==1);
//	}
//	
//	/**
//	 * 返回今天日期是否为1月1日
//	 * @param today 日期参数
//	 * @author src-dingchd
//	 * @return
//	 */
//	
//	public static boolean isFirstDayOfYear(Date today){
//		Calendar calendar = Calendar.getInstance();
//		calendar.setTime(today);
//		int day = calendar.get(Calendar.DAY_OF_MONTH);
//		int month = calendar.get(Calendar.MONTH);
//		return day==1 && month == 0;
//	}
//	
//	public static Date daysAgo(int number) {
//		Calendar calendar = todayCalendar();
//		calendar.roll(Calendar.DAY_OF_MONTH, -number);
//		return calendar.getTime();
//	}
//
//	public static Date getPeriodFrom(Date date) {
//		Calendar calendar = Calendar.getInstance();
//		calendar.setTime(date);
//		calendar.set(Calendar.DAY_OF_MONTH, 1);
//		return calendar.getTime();
//	}
//
//	public static Date getCurrentPeriod(){
//		return getPeriodFrom(new Date());
//	}
//
//	public static Date getNextPeriodFrom(Date periodStart) {
//		periodStart = getPeriodFrom(periodStart);
//
//		Calendar calendar = Calendar.getInstance();
//		calendar.setTime(periodStart);
//		//calendar.roll(Calendar.MONTH, true);
//        calendar.add(Calendar.MONTH, 1);
//		return calendar.getTime();
//	}
//	
//	public static boolean isJanuary(Date date){
//		return (new DateTime(date).monthOfYear().get()==1);
//	}
//	
//	public static void main(String[] args) {
//		logger.info(DateUtil.today());
//		logger.info(new DateTime().monthOfYear().get());
//		//yesterday
//		logger.info(DateUtil.yesterday());
//		logger.info(new DateTime().minusDays(1).toDate());
//		
//		//isJan
//		Date d = new Date();
//		logger.info(DateUtil.isJanuary(d));
//		logger.info(new DateTime(d).monthOfYear().get()==1);
//		
//		//before
//		logger.info(DateUtil.beforeToday(10)); 
//		logger.info(new DateTime().minusDays(10).toDate());
//	}

}
